From 3a7e3cd331d50c91debaf68df64e74a2594d23c9 Mon Sep 17 00:00:00 2001 From: Ian Campbell Date: Wed, 24 Sep 2014 15:13:28 +0100 Subject: [PATCH] xen: arm: correct VTCR setting on arm32. 1c92a2aaf8c6 "xen: arm: support for up to 48-bit IPA addressing on arm64" inadvertently changes the VTCR setting for 32-bit from 0x80003558 to 0x80003518, changing the SL0 setting from 0x1 (p2m starts at L1) to 0x0 (p2m starts at L2). For some (inexplicable) reason this doesn't cause any issue on Arndale but it does on the OdroidXU. Reported-by: Suriyan Ramasami Signed-off-by: Ian Campbell Reviewed-by: Julien Grall Tested-by: Suriyan Ramasami --- xen/arch/arm/p2m.c | 1 + 1 file changed, 1 insertion(+) diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c index 4dccf7b929..70929fca2b 100644 --- a/xen/arch/arm/p2m.c +++ b/xen/arch/arm/p2m.c @@ -1163,6 +1163,7 @@ void __init setup_virt_paging(void) #ifdef CONFIG_ARM_32 printk("P2M: 40-bit IPA\n"); val |= VTCR_T0SZ(0x18); /* 40 bit IPA */ + val |= VTCR_SL0(0x1); /* P2M starts at first level */ #else /* CONFIG_ARM_64 */ const struct { unsigned int pabits; /* Physical Address Size */ -- 2.30.2